셀, 터미널, 콘솔

프로그래밍을 시작하기 전에 반드시 알아야 하는 몇 가지 기초 개념들이 있다. 바로 셸(shell)과 터미널(terminal), 그리고 콘솔(console)이다. 윈도우즈에서는 커맨드 프롬프트 라인(command prompt line), 우리말로 번역하여 명령줄이라고도 한다.

사실 정확히 따지자면 이 단어들은 서로 같은 뜻이 아니지만 프로그램을 처음으로 시작하는 초보자는 일단 다음과 같이 생각하면 된다.

검은 바탕에 글자만 하얗게 나오는 화면.

커서가 반짝거리고 키보드를 타이핑하면 글자가 써진다.

예를 들어 다음과 같은 화면을 말한다.

셀 시작하기

윈도우즈에서 셸 시작하기

윈도우즈 운영체제를 사용하는 경우에는 다음과 같이 셸을 시작할 수 있다.

  • 시작 버튼 > 검색창에 "cmd" 라고 친다. > 검색되어 나오는 "cmd.exe" 프로그램이나 "명령 프롬프트" 프로그램을 선택
  • 시작 버튼 > 모든 프로그램 > 보조 프로그램 > 명령 프롬프트 프로그램을 선택

맥 OS X 에서 셸 시작하기

맥 OS X 운영체제를 사용하는 경우에는 다음과 같이 셸을 시작할 수 있다.

  • Spotlight 검색 > 검색창에 "Terminal" 또는 "터미널" 이라고 친다. > 검색되어 나오는 "Terminal" 혹은 "터미널" 앱 실행
  • 파인더 > 응용 프로그램 > 유틸리티 > 터미널

프롬프트

셸 화면에서는 항상 새로운 줄이 시작할 때마다 무언가 글씨가 출력되어 있다. 가장 일반적으로 나오는 것이 $(달러 표시) 기호이다. 경우에 따라 $(달러 표시) 기호 앞에 다른 글자가 있을 수도 있다.

이 글자와 기호를 프롬프트(prompt)라고 한다.

프롬프트는 셸이 사용자의 명령을 받을 수 있는 상태가 되었음을 알려준다. 프롬프트가 나오면 키보드로 명령을 입력할 수 있다.

셸 명령

아까 셸과 터미널/콘솔은 각각 의미가 다르다고 했는데 정확하게 말하면

  • 셀은 글자를 타이핑하여 컴퓨터에게 명령하는 프로그램을 뜻하고
  • 터미널/콘솔은 셸을 실행하기 위해 글자 입력을 받아 컴퓨터에게 전달하거나 컴퓨터의 출력을 글자 화면에 쓰는 프로그램을 말한다.

따라서 셸과 터미널/콘솔은 항상 같이 실행할 수 밖에 없기 때문에 일반적으로 같은 의미로 사용된다.

셸 화면에서는 컴퓨터에게 글자를 타이핑하여 간단한 명령을 할 수 있다. 주로 파일이나 폴더(디렉토리)와 관련된 명령이다. 이 명령어는 윈도우즈와 맥 OS X 에서 다르다.

기본 셸 명령

명령 윈도우즈 셸 맥/리눅스 셸
화면 지우기 cls ctrl+l
현재 디렉토리 cd pwd
현재 디렉토리의 파일 목록 dir ls -Fcal
한 칸 위로 디렉토리 이동 cd .. cd ..
한 칸 아래로 디렉토리 이동 cd 디렉토리이름 cd 디렉토리이름
파일 지우기 del 파일이름 rm 파일이름
디렉토리 만들기 mkdir 디렉토리이름 mkdir 디렉토리이름
디렉토리 지우기 rmdir 디렉토리이름 rmdir 디렉토리이름
셸 나가기 exit exit